package dynamicPlan;

public class robTest {
    public int rob(int[] nums) {
        if (nums.length==0){
            return 0;
        }
        if (nums.length==1){
            return nums[0];
        }
        int[]dp=new int[nums.length];
        dp[0]=nums[0];
        dp[1]=maxNum(nums[0],nums[1]);
        for (int i = 2; i < nums.length; i++) {
            dp[i]=maxNum(dp[i-1],dp[i-2]+nums[i]);
        }
        return maxArray(dp);
    }
    public static int maxNum(int a,int b){
        if (a<b){
            return b;
        }
        else{
            return a;
        }
    }
    public static int maxArray(int[] array){
        int max=array[0];
        for (int i=1;i<array.length;i++){
            if (array[i]>max){
                max=array[i];
            }
        }
        return max;
    }


    public static void main(String[] args) {
        int[]nums={1,2,3,1};
        robTest robTest=new robTest();
        System.out.println(robTest.rob(nums));
    }
}
